我的项目基于create-react-app。npm start或者yarn start默认情况下将在 端口 3000 上运行应用程序,并且没有在 package.json 中指定端口的选项。
npm start
yarn start
在这种情况下,如何指定我选择的端口?我想同时运行两个这个项目(用于测试),一个在端口3005,另一个是3006
3005
3006
如果您不想设置环境变量,另一种选择是修改scriptspackage.json 的部分:
scripts
"start": "react-scripts start"
到
Linux (在 Ubuntu 14.04/16.04 上测试)和 MacOS (由 @aswin-s 在 MacOS Sierra 10.12.4 上测试):
"start": "PORT=3006 react-scripts start"
或者(可能是)@IsaacPak 提供的更通用的解决方案
"start": "export PORT=3006 react-scripts start"
Windows @JacobEnsor 解决方案
"start": "set PORT=3006 && react-scripts start"
cross-env lib 在任何地方都可以使用。有关详细信息,请参阅 Aguinaldo Possatto[答案](https://stackoverflow.com/
由于我的回答很受欢迎而更新: 目前我更喜欢使用保存在文件中的环境变量(有助于以方便和可读的形式.env存储不同配置的变量集)。如果您仍将秘密存储在文件中,请deploy不要忘记添加。这里解释了为什么在大多数情况下使用环境变量更好。这里解释了为什么在环境中存储秘密是个坏主意。*.env``.gitignore``.env
.env
deploy
*.env``.gitignore``.env